home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / DEF / Midi / Setups / def-sound-set < prev   
Text File  |  1998-10-23  |  4KB  |  121 lines

  1. def-sound-set set-name <group> &rest <groups>
  2.  
  3. General MIDI Sound Set is situated by default in the Environment/Extensions and can be used with a wide variaty of synthesizers. You can make your own synth setups with def-sound-set. The following example shows how the General MIDI Sound Set is defined. The sounds are represented in named groups followed by the instrument names and corresponding MIDI program change numbers. Refer to your synthesizer manual to set up a customized sound set.
  4.  
  5. (def-sound-set gm-sound-set
  6.   group piano
  7.   acoustic-grand-piano   1
  8.   bright-acoustic-piano  2
  9.   electric-grand-piano   3
  10.   honky-tonk-piano       4
  11.   electric-piano-1       5
  12.   ;....
  13.   group sound-effects
  14.   guitar-fret-noise    121
  15.   breath-noise         122
  16.   seashore             123
  17.   bird-tweet           124
  18.   telephone-ring       125
  19.   helicopter           126
  20.   applause             127
  21.   gunshot              128
  22. )
  23.  
  24. Installing
  25.  
  26. After you have evaluated the def-sound-set definition, the sound set set-name appears on the MIDI menu. Include the def-sound-set definitions in a file that you store in Environment/Extensions folder. This file is first loaded during boot up.
  27.  
  28. Using Sound-Sets
  29.  
  30. When the instrument name is used within def-program and the sound set title is supplied the program change value is automatically used when compiling the instrument.
  31.  
  32. (def-program gm-sound-set
  33.    default acoustic-grand-piano
  34.    piano electric-piano-1 ; send at the beginning of a track
  35.    sax ((alto-sax)      ; two first zones have its own values
  36.         (soprano-sax)   ; third zone has programs for each
  37.         (alto-sax tenor-sax))  ; individual notes 
  38. )
  39.  
  40. Using Banks
  41.  
  42. Some synths have several sound banks. Before program change will take place also the sound bank must be selected. There are two ways to achieve this. Check you synth manual.
  43.  
  44. Multiple Program Changes
  45.  
  46. If your synth responds to successive program changes so that first one selectes the bank and the next selects the program define the sounds with (multi <bank> <program>).
  47.  
  48. (def-sound-set K2000 
  49.   group Klavier1
  50.         dual-elec-piano        (multi 100 52)
  51.         tine-elec-piano        (multi 100 12)
  52.         digital-epiano         (multi 100 92)
  53.         stereo-grand           (multi 100 2)
  54.         bright-piano           (multi 100 42)
  55.         piano&slo-strings      (multi 100 22)
  56.         piano/slow-strings     (multi 101 2)
  57.         perc-organ             (multi 100 82)
  58.         gospel-organ           (multi 100 62)
  59.         ballad-organ           (multi 101 22)
  60. )
  61.  
  62. If your synth responds to controller 32 to select bank you should use (bank <bank> <program>).
  63.  
  64. (def-sound-set mu80-sounds
  65.   group Piano
  66.         GrandPno       (bank 0 1) 
  67.         BritePno       (bank 0 2) 
  68.         E-Grand        (bank 0 3) 
  69.         HnkyTonk       (bank 0 4) 
  70.         E-Piano1       (bank 0 5) 
  71.         E-Piano2       (bank 0 6) 
  72.         Harpsi         (bank 0 7) 
  73.         Clavi          (bank 0 8) 
  74.         Celesta        (bank 0 9) 
  75. )
  76.  
  77. Using MSB/LSB Program
  78.  
  79. Some synths respond both controller 0 and 32 to select the bank. This case use 3 parameters:
  80.  
  81. (def-sound-set 2080-sounds
  82.    group Ethnic
  83.      Jamisen       (bank 81 2 104)
  84. )
  85.  
  86. Accessing sound-sets in def-section
  87.  
  88. Here is an easy way to access sound-sets within def-section. def-sound-set creates a k2000 macro that lets to return the program number hooked to it. If you want to change programs note by note you can use more than one drum names within the macro. If each zone must have it's own program values use (append .. ..) to build a suitable formed list.
  89.  
  90. (def-orchestra 'orchestra
  91.    all-instruments (piano synth bass)
  92. )
  93.  
  94. (def-section a
  95.   default
  96.     zone '(1/1 1/1)
  97.     tonality (activate-tonality (major c 4))
  98.     length '(1/16)
  99.     velocity '(64)
  100.     symbol '(a b c)
  101.   piano 
  102.     channel 1
  103.     program (k2000 dual-elec-piano tine-elec-piano) 
  104.   synth
  105.     channel 2
  106.     program (k2000 new-prophet) 
  107.   bass
  108.     channel 3
  109.     program (append (k2000 dual-elec-piano) 
  110.                     (k2000 tine-elec-piano)) 
  111. )
  112.  
  113. (midiport :printer)
  114.  
  115. (def-tempo 120)
  116.  
  117. (play-file-p "test2"
  118.    all-instruments '(a)
  119. )
  120.  
  121.